Micron Document
<!DOCTYPE html>
<html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-0 vector-toc-not-available vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-0 skin-theme-clientpref-day vector-sticky-header-enabled" lang="de" dir="ltr"><head>
<meta charset="UTF-8">
<title>Fraktale Tonkompression</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" type="image/png" href="./_res_/favicon.png">
<link rel="canonical" href="https://de.wikipedia.org/wiki/Fraktale_Tonkompression"> <link href="./_mw_/ext.math.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.wikimediamessages.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link href="./_mw_/ext.gadget.citeRef.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.defaultPlainlinks.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonHide.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonLayout.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonStyle.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiDarkmode.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiResponsive.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.specialSearch.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" type="text/css" href="./_mw_/site.styles.css">
<link rel="stylesheet" type="text/css" href="./_mw_/noscript.css">
<link rel="stylesheet" type="text/css" href="./_res_/footer.css">
<link rel="stylesheet" type="text/css" href="./_res_/vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Fraktale_Tonkompression rootpage-Fraktale_Tonkompression skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">Fraktale Tonkompression</span></h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="contentSub">
<div id="mw-content-subtitle"></div>
</div>
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="de" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="de" dir="ltr"><p><b>Fraktale Tonkompression</b> ist ein Verfahren zur <a href="Verlustbehaftete_Kompression" class="mw-redirect" title="Verlustbehaftete Kompression">verlustbehafteten Kompression</a> von digitalisierten, eindimensionalen Signalen, wie z.&nbsp;B. Tonsignalen, bei dem die <a href="Selbst%C3%A4hnlichkeit" title="Selbstähnlichkeit">Selbstähnlichkeit</a> in den Signalen ausgenutzt wird.
</p><p>Ihren Ursprung fand dieses Verfahren in der <a href="Fraktale_Bildkompression" title="Fraktale Bildkompression">fraktalen Bildkompression</a>, die auf die theoretischen Grundlagen von Michael F. Barnsley und Alan D. Sloan zurückgeht.
</p>

<div class="mw-heading mw-heading2"><h2 id="Prinzip">Prinzip</h2></div>
<p>Die Idee beruht auch hier auf einer bestimmten Sorte von Fraktalen, dem <a href="Iteriertes_Funktionensystem" title="Iteriertes Funktionensystem">Iterierten Funktionen-System</a> (IFS). Hier werden komplexe Abbildungen mit einer Menge von <a href="Affinit%C3%A4t_(Mathematik)" title="Affinität (Mathematik)">affinen</a> Abbildungen des Signales in sich selbst erstellt.
</p><p>Im Gegensatz zu Bildern besitzen Audiosignale keine zweite Dimension, sondern sind eindimensionale Signale. Trotzdem kann man die prinzipielle Funktion der fraktalen Algorithmen aus der Bildkompression problemlos auf diese Art von Signalen übertragen.
</p><p>Das Kodierverfahren selbst ist von der Vorgehensweise her identisch mit dem der Bildkompression. Der wesentliche Unterschied besteht in der Anzahl der möglichen Transformationen, die auf ein eindimensionales Signal angewandt werden können. Bedingt durch die fehlende zweite Dimension bleiben hier deutlich weniger Möglichkeiten. Konkret sind es sieben relevante Transformationen:
</p>
<ol><li>Identität s(t) → s(t)</li>
<li>Vertikale Verschiebung (Offset) s(t) → s(t) + o</li>
<li>Horizontale Verschiebung (Zeit) s(t) → s(t + Δ t)</li>
<li>Strecken/Stauchen (Dynamik) s(t) → d × s(t)</li>
<li>Vertikale Spiegelung (Phasendrehung) s(t) → -1 × s(t)</li>
<li>Horizontale Spiegelung (Zeitinversion) s(t) → s(-t)</li>
<li>Kontraktion (Zeitdilatation) s(t) → s(a × t)</li></ol>
<p>Die Transformationen 4 und 5 sowie 6 und 7 lassen sich zusammenfassen, sodass effektiv nur fünf mögliche Transformationen zur Verfügung stehen.
</p><p>Die Kodierung läuft dann nach einem einfachen Schema ab. Der Algorithmus unterteilt das Signal in eine definierte Anzahl von Zielblöcken a und Ursprungsblöcken b und versucht, für jeden einzelnen dieser Zielblöcke eine Transformation <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle T_{k}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>T</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>k</mi>
</mrow>
</msub>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle T_{k}}</annotation>
</semantics>
</math></span><img src="./_assets_/eb734a37dd21ce173a46342d1cc64c92/51cc852c6e446a4871f78e05492699a9525b9acb.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:2.446ex; height:2.509ex;" alt="{\displaystyle T_{k}}" loading="lazy"></span> zu finden, die einen Ursprungsblock <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle b_{k}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>b</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>k</mi>
</mrow>
</msub>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle b_{k}}</annotation>
</semantics>
</math></span><img src="./_assets_/eb734a37dd21ce173a46342d1cc64c92/9ca33a19a52bbe58090767bcfb0aae551c925dcb.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:2.086ex; height:2.509ex;" alt="{\displaystyle b_{k}}" loading="lazy"></span> transformiert und damit den Zielblock <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle a_{k}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>a</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>k</mi>
</mrow>
</msub>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle a_{k}}</annotation>
</semantics>
</math></span><img src="./_assets_/eb734a37dd21ce173a46342d1cc64c92/05e256a120c3ab9f8958de71acdf81cd75065e3b.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:2.319ex; height:2.009ex;" alt="{\displaystyle a_{k}}" loading="lazy"></span> möglichst ideal abbildet.
</p><p><span class="mw-default-size" typeof="mw:File"></span>
</p><p>Zu beachten ist, dass der Block <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle b_{k}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>b</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>k</mi>
</mrow>
</msub>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle b_{k}}</annotation>
</semantics>
</math></span><img src="./_assets_/eb734a37dd21ce173a46342d1cc64c92/9ca33a19a52bbe58090767bcfb0aae551c925dcb.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:2.086ex; height:2.509ex;" alt="{\displaystyle b_{k}}" loading="lazy"></span> größer sein muss als der Block <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle a_{k}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>a</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>k</mi>
</mrow>
</msub>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle a_{k}}</annotation>
</semantics>
</math></span><img src="./_assets_/eb734a37dd21ce173a46342d1cc64c92/05e256a120c3ab9f8958de71acdf81cd75065e3b.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:2.319ex; height:2.009ex;" alt="{\displaystyle a_{k}}" loading="lazy"></span>, da fraktale Kompressionen auf kontrahierenden Funktionen beruhen.
Wurde für jeden Zielblock eine entsprechende Transformation gefunden, wird das eigentliche Signal verworfen und an seiner Stelle nur die ermittelten Transformationen gespeichert. Der bei diesem Verfahren erreichbare Kompressionsfaktor ist einzig durch die Anzahl der (Abtast-)Werte pro Zielblock bestimmt. Je mehr Werte ein Zielblock enthielt, desto größer ist der Kompressionsfaktor. Theoretisch sind somit beliebig hohe Kompressionsfaktoren erreichbar.
</p><p>Die Suche nach einem Satz solcher Transformationen ist extrem aufwendig, was neben verschiedenen ungelösten Qualitätsproblemen der Hauptgrund ist, weshalb eine fraktale Kompression von Tonsignalen niemals ernsthaft in Betracht gezogen wurde.
</p><p>Die Rekonstruktion eines Tonsignals erfolgt iterativ. Es wird mit einem beliebigen Signal begonnen, das in seiner Gesamtlänge dem ursprünglichen Signal entsprechen muss. Dann werden alle gespeicherten Transformationen durchgeführt. Das so erhaltene Signal dient wieder als Ausgangssignal für die nächste Iteration.
Mit jeder Iteration wird das rekonstruierte Signal dem ursprünglichen Signal ähnlicher. Diese Iterationen werden so oft durchgeführt, bis keine Verbesserung mehr erreicht wird.
</p>
<div class="mw-heading mw-heading2"><h2 id="Qualität"><span id="Qualit.C3.A4t"></span>Qualität</h2></div>
<p>Die erzielbare akustische Qualität einer fraktalen Tonkompression hängt zum einen stark vom zu erreichenden Kompressionsfaktor ab, ist zum anderen aber auch von einigen, durch das Verfahren bedingte Besonderheiten, abhängig. Generell gilt: Je höher der Kompressionsfaktor, desto schlechter die Qualität. Durch das Verfahren als solches gibt es zwei wesentliche Probleme, die die Qualität nachhaltig beeinflussen. Fraktale Kompressionen beruhen auf kontrahierenden Funktionen. Das bedeutet, dass immer ein Verlust hochfrequenter Signalanteile stattfindet. Die Ursache dafür liegt im <a href="Nyquist-Shannon-Abtasttheorem" title="Nyquist-Shannon-Abtasttheorem">Abtasttheorem</a> und kann nicht umgangen werden. Außerdem kommt es, durch die auf Blöcken basierte Kompression, an den Blockgrenzen im dekodierten Signal zu Phasensprüngen, die sich akustisch als Knistern äußern. Dieses Problem kann durch entsprechende Nachbearbeitung des dekodierten Signals mit z.&nbsp;B. <a href="Wavelet-Transformation" title="Wavelet-Transformation">Wavelet-Transformationen</a> gemildert oder sogar beseitigt werden.
</p><p>Im Allgemeinen erreicht eine fraktale Kompression jedoch nicht die Qualität von z.&nbsp;B. psychoakustischen Verfahren wie <a href="MP3" title="MP3">MP3</a> oder <a href="RealAudio" title="RealAudio">RealAudio</a>.
</p>
<div class="mw-heading mw-heading2"><h2 id="Literatur">Literatur</h2></div>
<ul><li>Michael F. Barnsley, Lyman P. Hurd: <i>Bildkompression mit Fraktalen.</i> Vieweg, Braunschweig u. a. 1996, ISBN 3-528-05464-6.</li>
<li>Reiko Klimpsch: <i>Entwicklung und Analyse eines fraktalen Verfahrens zur Tonkompression.</i> Diplomarbeit, 2002.</li>
<li>Stephan Schneider: <i>Entwicklung und Analyse eines fraktalen Kodierverfahrens für Sprachsignale</i> (= <i>Schriftenreihe Prozeßmodelle.</i> Bd. 4). Köster, Berlin 2001, ISBN 3-89574-416-6 (Zugleich: Cottbus, Technische Universität, Dissertation, 2001).</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Siehe_auch">Siehe auch</h2></div>
<ul><li><a href="Fraktale_Bildkompression" title="Fraktale Bildkompression">Fraktale Bildkompression</a></li></ul></div><!--htdig_noindex--><div><div class="zim-footer">
Dieser Artikel wurde von <a class="external text" title="Zuletzt bearbeitet am 2024-04-26" href="https://de.wikipedia.org/wiki/?title=Fraktale_Tonkompression&amp;oldid=244424294">Wikipedia</a> herausgegeben. Der Text ist unter <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.de">Creative Commons Attribution-Share Alike 4.0</a> verfügbar, sofern nicht anders angegeben. Für die Mediendateien können zusätzliche Bedingungen gelten.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
<script src="./_webp_/webpHandler.js"></script>

</body></html>